package com.feng.chat.pojo;

import io.gitee.zerowsh.actable.annotation.AcColumn;
import io.gitee.zerowsh.actable.annotation.AcTable;
import io.gitee.zerowsh.actable.emnus.ColumnTypeEnums;

import java.time.LocalTime;

@AcTable(name = "talk_records_file",comment = "用户聊天记录_文件消息表")
public class TalkRecordsFile {
    @AcColumn(name = "id",comment = "文件ID",type = ColumnTypeEnums.INT,length = 20,isAutoIncrement = true,isKey = true)
    private Integer id;

    @AcColumn(name = "record_id",defaultValue = "0",comment = "消息记录ID",type = ColumnTypeEnums.INT)
    private Integer record_id;

    @AcColumn(name = "user_id",defaultValue = "0",comment = "上传文件的用户ID",type = ColumnTypeEnums.INT)
    private Integer user_id;

    @AcColumn(name = "source",defaultValue = "1",comment = "文件来源[1:用户上传;2:表情包]",type = ColumnTypeEnums.TINYINT)
    private Integer source;

    @AcColumn(name = "type",defaultValue = "1",comment = "消息类型[1:图片;2:视频;3:文件]",type = ColumnTypeEnums.TINYINT)
    private Integer type;

    @AcColumn(name = "drive",defaultValue = "1",comment = "驱动类型[1:local;2:cos;]",type = ColumnTypeEnums.TINYINT)
    private Integer drive;

    @AcColumn(name = "original_name", defaultValue = "", comment = "原文件名", type = ColumnTypeEnums.VARCHAR,length = 100, isNull = false)
    private String original_name;

    @AcColumn(name = "suffix", defaultValue = "", comment = "文件后缀名", type = ColumnTypeEnums.VARCHAR,length = 10, isNull = false)
    private String suffix;

    @AcColumn(name = "size", defaultValue = "0", comment = "文件大小（单位字节）", type = ColumnTypeEnums.BIGINT,isNull = false)
    private Integer size;

    @AcColumn(name = "path", defaultValue = "", comment = "文件地址(相对地址)", type = ColumnTypeEnums.VARCHAR,length = 300, isNull = false)
    private String path;

    @AcColumn(name = "url", defaultValue = "", comment = "网络地址(公开文件地址)", type = ColumnTypeEnums.VARCHAR,length = 300, isNull = false)
    private String url;

    @AcColumn(name = "is_delete",defaultValue = "0",comment = "文件是否已删除[0:否;1:已删除]",type = ColumnTypeEnums.TINYINT)
    private Integer is_delete;

    @AcColumn(name = "created_at", comment = "创建时间", type = ColumnTypeEnums.DATETIME, isNull = true)
    private LocalTime createdAt;
}
